extends CenterContainer

@onready var 武器准心: Control = $".."

@export var 瞄准线:Array[Line2D]



func _ready() -> void:
	pass

func _process(_delta: float) -> void:
	更新准心十字线()
	pass


func _draw() -> void:
	draw_circle(Vector2(0,0),武器准心.中心点大小,武器准心.准心颜色)
	pass



func 更新准心十字线():
	var 玩家速度 =武器准心.玩家_节点.get_real_velocity()
	var z1 = Vector3(0,0,0)
	var z2 = Vector2(0,0)
	var 速度 = z1.distance_to(玩家速度) + 武器准心.武器附加扩散
	var 准心扩散大小 = 武器准心.准心扩散大小
	#我不知道该怎么描述这段代码,基本上就是获取到玩家的速度将其与准心扩散的速度做同步
	if 速度 < 武器准心.最大准心扩散大小:
		瞄准线[0].position = lerp(瞄准线[0].position,  (z2 + Vector2(0,-速度 * 武器准心.准心扩散大小)) ,武器准心.准心扩散速度)
		瞄准线[1].position = lerp(瞄准线[1].position , (z2 + Vector2(0,速度 * 武器准心.准心扩散大小)),武器准心.准心扩散速度)
		瞄准线[2].position = lerp(瞄准线[2].position , (z2 + Vector2(-速度 * 武器准心.准心扩散大小,0))  ,武器准心.准心扩散速度)
		瞄准线[3].position = lerp(瞄准线[3].position , (z2 + Vector2(速度 * 武器准心.准心扩散大小,0)) ,武器准心.准心扩散速度)
